<html>
<body>
报告可以简化的 <b>Optional</b> 调用链。 下面是一些简化的例子：
<ul>
  <li><code>optional.map(x -> true).orElse(false)</code> &rarr; <code>optional.isPresent()</code></li>
  <li><code>optional.map(x -> Optional.of(x.trim())).orElseGet(Optional::empty)</code> &rarr; <code>optional.map(String::trim)</code></li>
  <li><code>optional.map(x -> (String)x).orElse(null)</code> &rarr; <code>(String) optional.orElse(null)</code></li>
  <li><code>Optional.ofNullable(optional.orElse(null))</code> &rarr; <code>optional</code></li>
  <li><code>val = optional.orElse(null); val != null ? val : defaultExpr </code> &rarr; <code>optional.orElse(defaultExpr)</code></li>
  <li><code>val = optional.orElse(null); if(val != null) expr(val) </code> &rarr; <code>optional.ifPresent(val -> expr(val))</code></li>
</ul>
<!-- tooltip end -->
<p><small>2017.2 最新变化</small></p>
</body>
</html>